//import java.net.URI
//
//import org.apache.hadoop.conf.Configuration
//import org.apache.hadoop.fs.{FileSystem, Path}
//import org.apache.hadoop.hive.conf.HiveConf
//import org.apache.hadoop.hive.metastore.HiveMetaStoreClient
//import org.apache.hadoop.hive.metastore.api.{Database, MetaException}
//import org.apache.thrift.TException
//import org.junit.{After, Before, Test}
//
//object HDFSApp {
//
//
//  //HiveMetaStore的客户端
//  var hiveMetaStoreClient = new HiveMetaStoreClient
//
//  /**
//    * 功能描述:
//    * 设置HiveJDBC的数据源
//    */
//  @Before
//  def setHiveMetaStoreConf(): Unit = {
//    val hiveConf = new HiveConf
//    //<name>hive.metastore.uris</name>
//    //    <value>thrift://bdptest1:9083</value>
//    hiveConf.set("hive.metastore.uris", "thrift://bdptest1:9083")
//    try { //设置hiveMetaStore服务的地址
//      this.hiveMetaStoreClient = new HiveMetaStoreClient(hiveConf)
//      //当前版本2.3.4与集群3.0版本不兼容，加入此设置
//      this.hiveMetaStoreClient.setMetaConf("hive.metastore.client.capability.check", "false")
//    } catch {
//      case e: MetaException =>
//        e.printStackTrace()
//      case e: TException =>
//        e.printStackTrace()
//    }
//  }
//
//  // 由数据库的名称获取数据库的对象(一些基本信息)
//
//  @Test
//  def getDBName(): Unit = {
//    val database = this.hiveMetaStoreClient.getDatabase("prod_bd")
//    System.out.println(database)
//  }
//
//  def main(args: Array[String]): Unit = {
//
//    val hiveConf = new HiveConf
//    //<name>hive.metastore.uris</name>
//    //    <value>thrift://bdptest1:9083</value>
//    hiveConf.set("hive.metastore.uris", "thrift://bdptest1:9083")
//    try { //设置hiveMetaStore服务的地址
//      this.hiveMetaStoreClient = new HiveMetaStoreClient(hiveConf)
//      //当前版本2.3.4与集群3.0版本不兼容，加入此设置
//      this.hiveMetaStoreClient.setMetaConf("hive.metastore.client.capability.check", "false")
//    } catch {
//      case e: MetaException =>
//        e.printStackTrace()
//      case e: TException =>
//        e.printStackTrace()
//    }
//
//    val database = this.hiveMetaStoreClient.getDatabase("prod_bd")
//    System.out.println(database)
//    this.hiveMetaStoreClient.close()
//  }
//
//
//  // 根据数据库名称获取所有的表名
//  //    List<String> tablesList = this.hiveMetaStoreClient.getAllTables(dbName);
//  //    // 由表名和数据库名称获取table对象(能获取列、表信息)
//  //
//  //    Table table = this.hiveMetaStoreClient.getTable(dbName, tableName);
//  //    // 获取所有的列对象
//  //    List<FieldSchema> fieldSchemaList = table.getSd().getCols();
//  // 关闭当前连接
//  @After
//  def close(): Unit = {
//    this.hiveMetaStoreClient.close()
//  }
//}
